package org.millioncall.yueyoga.admin.model.base;

import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import org.apache.commons.lang.StringUtils;
import org.millioncall.yueyoga.admin.model.Area;
import org.millioncall.yueyoga.admin.model.EarlyExperience;
import org.millioncall.yueyoga.admin.model.MemberLevel;
import org.millioncall.yueyoga.admin.model.Order;
import org.millioncall.yueyoga.admin.model.ProductRemaining;
import org.millioncall.yueyoga.admin.model.Remaining;
import org.millioncall.yueyoga.admin.model.Status;
import org.millioncall.yueyoga.admin.model.User;
import org.millioncall.yueyoga.common.utils.AgeUtil;

/**
 * @author lisj Mar 25, 2014 1:49:10 PM
 */
public class BaseMember implements Serializable {

	private static final long serialVersionUID = 8473782862368381502L;

	private Integer memberId;
	private String cardnumber;
	private String name;
	private String password;
	private String sex = "男";
	private Date birthday;
	private Integer levelId;
	private MemberLevel level;
	private String tel;
	private String phone;
	private String email;
	private String qq;
	private String company;
	private Integer identityType;
	private String identity;
	private Date validityBeginTime;
	private Date validityEndTime;
	private Integer introduceid;
	private Date inputTime;
	private User user;
	private Area area;
	private Integer provinceId;
	private Integer cityId;
	private Integer areaId;
	private Integer domainId;
	private String provinceName;
	private String cityName;
	private String domainName;
	private String address;
	private Boolean enable;
	private String wechat;
	private String openID;
	private String nameEn;
	private String companyaddress;
	private String duty;
	private String headimgpath;
	private String position;
	private String substatus;
	private String marketingsource;
	private String keeperId;
	private String promoterId;
	private String submarketingchannel;
	private String hallcode;
	private String experienceid;
	private String remarks;
	private Date createTime;//创建时间
	private String keeperName;
	private String fuzerenName;
	private String cardno;//会员手牌
	private Remaining remaining;
	private EarlyExperience earlyExperience;
	private Set<Order> orders = new HashSet<Order>();
	private Set<ProductRemaining> productRemaining = new HashSet<ProductRemaining>();
	private String organizationId;

	// --2014.04.10
	private Status childStatus; // 子状态
	private String parStatusName; // 父状态名称

	private String privatePhone; // 私人手机号码
	private String officePhone; // 办公号码
	private String homeNumber; // 家庭号码

	private User keeper;
	private User promoter;
	private String areaName;
	private String mainStatus; // 状态
	private String zstatus;// 子状态

	public String getZstatus() {
			return zstatus==null?"":zstatus;
	}

	public void setZstatus(String zstatus) {
		this.zstatus = zstatus;
	}

	public BaseMember() {
	}

	public String getMainStatus() {
			return mainStatus==null?"":mainStatus;
	}

	public void setMainStatus(String mainStatus) {
		this.mainStatus = mainStatus;
	}

	public String getAreaName() {
			return areaName==null?"":areaName;
	}

	public void setAreaName(String areaName) {
		this.areaName = areaName;
	}

	public Integer getMemberid() {
		return memberId;
	}

	public void setMemberId(Integer memberId) {
		this.memberId = memberId;
	}

	public String getCardnumber() {
		return cardnumber==null?"":cardnumber;
	}

	public void setCardnumber(String cardnumber) {
		this.cardnumber = cardnumber;
	}

	public String getName() {
		return name==null?"":name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getSex() {
		return sex==null?"":sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public MemberLevel getLevel() {
		return level;
	}

	public void setLevel(MemberLevel level) {
		this.level = level;
	}

	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	public Area getArea() {
		return area;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public void setArea(Area area) {
		this.area = area;
	}

	public String getTel() {
		return tel==null?"":tel;
	}

	public void setTel(String tel) {
		this.tel = tel;
	}

	public String getPhone() {
		return phone==null?"":phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getEmail() {
		return email==null?"":email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getQq() {
		return qq==null?"":qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}

	public String getCompany() {
		return company==null?"":company;
	}

	public void setCompany(String company) {
		this.company = company;
	}

	public Integer getIdentityType() {
		return identityType;
	}

	public void setIdentitytype(Integer identityType) {
		this.identityType = identityType;
	}

	public String getIdentity() {
		return identity==null?"":identity;
	}

	public void setIdentity(String identity) {
		this.identity = identity;
	}

	public Date getValidityBeginTime() {
		return validityBeginTime;
	}

	public void setValiditybegintime(Date validityBeginTime) {
		this.validityBeginTime = validityBeginTime;
	}

	public Date getValidityEndTime() {
		return validityEndTime;
	}

	public void setValidityEndTime(Date validityEndTime) {
		this.validityEndTime = validityEndTime;
	}

	public Integer getIntroduceid() {
		return introduceid;
	}

	public void setIntroduceid(Integer introduceid) {
		this.introduceid = introduceid;
	}

	public Date getInputTime() {
		return inputTime;
	}

	public void setInputTime(Date inputTime) {
		this.inputTime = inputTime;
	}

	public String getAddress() {
		return address==null?"":address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public Boolean getEnable() {
		return enable;
	}

	public void setEnable(Boolean enable) {
		this.enable = enable;
	}

	public String getWechat() {
		return wechat==null?"":wechat;
	}

	public void setWechat(String wechat) {
		this.wechat = wechat;
	}

	public String getNameEn() {
		return nameEn==null?"":nameEn;
	}

	public void setNameEn(String nameEn) {
		this.nameEn = nameEn;
	}

	public String getCompanyaddress() {
		return companyaddress==null?"":companyaddress;
	}

	public void setCompanyaddress(String companyaddress) {
		this.companyaddress = companyaddress;
	}

	public String getDuty() {
		return duty==null?"":duty;
	}

	public void setDuty(String duty) {
		this.duty = duty;
	}

	public String getHeadimgpath() {
		return headimgpath==null?"":headimgpath;
	}

	public void setHeadimgpath(String headimgpath) {
		this.headimgpath = headimgpath;
	}

	public String getPosition() {
		return position==null?"":position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	public String getSubstatus() {
		return substatus==null?"":substatus;
	}

	public void setSubstatus(String substatus) {
		this.substatus = substatus;
	}

	public String getMarketingsource() {
		return marketingsource==null?"":marketingsource;
	}

	public void setMarketingsource(String marketingsource) {
		this.marketingsource = marketingsource;
	}

	public String getKeeperId() {
		return keeperId==null?"":keeperId;
	}

	public void setKeeperId(String keeperId) {
		this.keeperId = keeperId;
	}

	public String getPromoterId() {
		return promoterId==null?"":promoterId;
	}

	public void setPromoterId(String promoterId) {
		this.promoterId = promoterId;
	}

	public String getSubmarketingchannel() {
		return submarketingchannel==null?"":submarketingchannel;
	}

	public void setSubmarketingchannel(String submarketingchannel) {
		this.submarketingchannel = submarketingchannel;
	}

	public String getHallcode() {
		return hallcode;
	}

	public void setHallcode(String hallcode) {
		this.hallcode = hallcode;
	}

	public String getExperienceid() {
		return experienceid==null?"":experienceid;
	}

	public void setExperienceid(String experienceid) {
		this.experienceid = experienceid;
	}

	public String getRemarks() {
		return remarks;
	}

	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	public Remaining getRemaining() {
		return remaining;
	}

	public void setRemaining(Remaining remaining) {
		this.remaining = remaining;
	}

	public Set<Order> getOrders() {
		return orders;
	}

	public void setOrders(Set<Order> orders) {
		this.orders = orders;
	}

	public EarlyExperience getEarlyExperience() {
		return earlyExperience;
	}

	public void setEarlyExperience(EarlyExperience earlyExperience) {
		this.earlyExperience = earlyExperience;
	}

	public Status getChildStatus() {
		return childStatus;
	}

	public void setChildStatus(Status childStatus) {
		this.childStatus = childStatus;
	}

	public String getParStatusName() {
		return parStatusName==null?"":parStatusName;
	}

	public void setParStatusName(String parStatusName) {
		this.parStatusName = parStatusName;
	}

	public String getPrivatePhone() {
		return privatePhone==null?"":privatePhone;
	}

	public void setPrivatePhone(String privatePhone) {
		this.privatePhone = privatePhone;
	}

	public String getOfficePhone() {
		return officePhone==null?"":officePhone;
	}

	public void setOfficePhone(String officePhone) {
		this.officePhone = officePhone;
	}

	public String getHomeNumber() {
		return homeNumber==null?"":homeNumber;
	}

	public void setHomeNumber(String homeNumber) {
		this.homeNumber = homeNumber;
	}

	public Integer getAge() {
		if (this.birthday == null) {
			return null;
		}
		return AgeUtil.getAgeByBirthday(this.birthday);
	}

	public Integer getLevelId() {
		return levelId;
	}

	public void setLevelId(Integer levelId) {
		this.levelId = levelId;
	}

	public User getKeeper() {
		return keeper;
	}

	public void setKeeper(User keeper) {
		this.keeper = keeper;
	}

	public User getPromoter() {
		return promoter;
	}

	public void setPromoter(User promoter) {
		this.promoter = promoter;
	}

	public Set<ProductRemaining> getProductRemaining() {
		return productRemaining;
	}

	public void setProductRemaining(Set<ProductRemaining> productRemaining) {
		this.productRemaining = productRemaining;
	}

	public String getKeeperName() {
		return keeperName == null?"":keeperName;
	}

	public void setKeeperName(String keeperName) {
		this.keeperName = keeperName;
	}

	public String getFuzerenName() {
		
		return fuzerenName==null?"":fuzerenName;

	}

	public void setFuzerenName(String fuzerenName) {
		this.fuzerenName = fuzerenName;
	}

	public String getOrganizationId() {
		return organizationId==null?"":organizationId;
	}

	public void setOrganizationId(String organizationId) {
		this.organizationId = organizationId;
	}

	public Integer getProvinceId() {
		return provinceId;
	}

	public void setProvinceId(Integer provinceId) {
		this.provinceId = provinceId;
	}

	public Integer getCityId() {
		return cityId;
	}

	public void setCityId(Integer cityId) {
		this.cityId = cityId;
	}

	public Integer getAreaId() {
		return areaId;
	}

	public void setAreaId(Integer areaId) {
		this.areaId = areaId;
	}

	public Integer getDomainId() {
		return domainId;
	}

	public void setDomainId(Integer domainId) {
		this.domainId = domainId;
	}

	public String getOpenID() {
		return openID;
	}

	public void setOpenID(String openID) {
		this.openID = openID;
	}

	public String getProvinceName() {
		return provinceName==null?"":provinceName;
	}

	public void setProvinceName(String provinceName) {
		this.provinceName = provinceName;
	}

	public String getCityName() {
		return cityName==null?"":cityName;
	}

	public void setCityName(String cityName) {
		this.cityName = cityName;
	}

	public String getDomainName() {
		return domainName==null?"":domainName;
	}

	public void setDomainName(String domainName) {
		this.domainName = domainName;
	}

	public String getCardno() {
		return cardno;
	}

	public void setCardno(String cardno) {
		this.cardno = cardno;
	}
	
	
}